-- Network Working Group M. Rose
-- Request for Comments: 1155 Performance Systems International
-- Obsoletes: RFC 1065 K. McCloghrie
-- Hughes LAN Systems
-- May 1990-- Structure and Identification of Management Information
-- for TCP/IP-based InternetsRFC1155-SMI DEFINITIONS::=BEGINEXPORTS-- EVERYTHING
internet, directory, mgmt,
experimental, private, enterprises,OBJECT-TYPE, ObjectName, ObjectSyntax, SimpleSyntax,
ApplicationSyntax,NetworkAddress,IpAddress,Counter,Gauge,TimeTicks,Opaque;-- the path to the rootinternet OBJECTIDENTIFIER::={ iso org(3) dod(6)1}directory OBJECTIDENTIFIER::={ internet 1}mgmt OBJECTIDENTIFIER::={ internet 2}experimental OBJECTIDENTIFIER::={ internet 3}private OBJECTIDENTIFIER::={ internet 4}enterprises OBJECTIDENTIFIER::={ private 1}
-- definition of object typesOBJECT-TYPEMACRO::=BEGINTYPENOTATION::="SYNTAX" type (TYPE ObjectSyntax)"ACCESS" Access
"STATUS" Status
VALUENOTATION::= value (VALUE ObjectName)
Access ::="read-only"
| "read-write"
| "write-only"
| "not-accessible"
Status ::="mandatory"
| "optional"
| "obsolete"END-- names of objects in the MIB
ObjectName ::=OBJECTIDENTIFIER-- syntax of objects in the MIB
ObjectSyntax ::=CHOICE{
simple
SimpleSyntax,-- note that simple SEQUENCEs are not directly-- mentioned here to keep things simple (i.e.,-- prevent mis-use). However, application-wide-- types which are IMPLICITly encoded simple
-- SEQUENCEs may appear in the following CHOICE
application-wide
ApplicationSyntax
}
SimpleSyntax ::=CHOICE{
number
INTEGER,
string
OCTETSTRING,
object
OBJECTIDENTIFIER,
empty
NULL}
ApplicationSyntax ::=CHOICE{
address
NetworkAddress,
counter
Counter,
gauge
Gauge,
ticks
TimeTicks,
arbitrary
Opaque-- other application-wide types, as they are-- defined, will be added here}-- application-wide typesNetworkAddress::=CHOICE{
internet
IpAddress}IpAddress::=
[APPLICATION0] -- in network-byte orderIMPLICITOCTETSTRING(SIZE(4))Counter::=
[APPLICATION1]
IMPLICITINTEGER(0..4294967295)Gauge::=
[APPLICATION2]
IMPLICITINTEGER(0..4294967295)TimeTicks::=
[APPLICATION3]
IMPLICITINTEGER(0..4294967295)Opaque::=
[APPLICATION4] -- arbitrary ASN.1 value,IMPLICITOCTETSTRING-- "double-wrapped"END